// 导入axios
import axios from 'axios'
// 单导 element的message组件
import { Message } from 'element-ui';



// 配置基础路径
axios.defaults.baseURL = 'http://localhost:5000'



// 拦截器--------------------------------------------------
axios.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么  添加token
    if (localStorage.getItem('user')) {
        let { token } = JSON.parse(localStorage.getItem('user'))
        config.headers.Authorization = 'Bearer ' + token;
    }
    return config;
}, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
});



// 添加响应拦截器-------------------------------------------
axios.interceptors.response.use(function (res) {
    // 对响应数据做点什么
    let { code, msg } = res.data;
    // 如果code=0 并且msg里面有提示信息
    if (code === 0) {
        if (msg) {
            Message({
                message: msg,
                type: 'success'
            })
        }
    } else {
        if (msg) {
            Message({
                message: msg,
                type: 'error'
            })
        }
    }
    return res;

}, function (error) {
    //判断token失效  如果401 的话
    // if()

    // 对响应错误做点什么
    Message({
        Message: error.message,
        type: 'error'
    })
    console.log('响应错误', Message.msg);
    return Promise.reject(error);
});



// 暴露 导出 axios
export default axios;